package org.example.pet.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import org.example.pet.dto.UserDetailDTO;
import org.example.pet.dto.UserPageQueryDTO;
import org.example.pet.pojo.User;


import java.util.Map;

public interface UserService extends IService<User> {
    /**
     * 用户注册
     * @param user 注册用户信息
     */
    void register(User user);

    /**
     * 用户登录
     * @param user 登录用户信息
     * @return 登录成功的用户信息
     */
    Map<String, Object> login(User user);

    /**
     * 根据用户名查询用户
     * @param username
     * @return
     */
    User getUserByUsername(String username);

    /**
     * 修改用户信息
     * @param user
     */
    UserDetailDTO updateUserInfo(User user);

    Page<User>  page(UserPageQueryDTO dto);
}
